This invention relates to a wireless communication apparatus, and more particularly to a MIMO (Multiple-Input Multiple-Output)-capable wireless communication apparatus in a transmission system comprising a MIMO configuration.
Among current wireless communication systems, there is increasing interest in space division multiplexing transmission technologies (MIMO transmission systems) in which, by transmitting different data streams in parallel from a plurality of transmission antennas, the transmission capacity can be increased in proportion to the number of transmission antennas. The main feature of a MIMO system is its capability to utilize a multipass so that it becomes advantageous to the user, and effectively takes advantage of the strong points of random fading and multipass delay dispersion (when it can be used).
In a MIMO transmission system, normally signal processing to subtract replicas that occur is employed to remove the interference by other data streams from a data stream of interest (V-BLAST, MSSE-VBLAST, Zero-Forced V-BLAST). These methods can be executed with suitable complexity, however, the BER result is very inferior compared with that from MLD (Maximum Likelihood Decoding).
An iterative MAP receiver (turbo receiver) performs iterative maximum likelihood estimation. This technology provides better BER results than V-BLAST, MSSE-VBLAST or Zero-Forced V-BLAST, and that are very close to BER results by MLD. However, a turbo receiver has its weak points. The main weak point is that it is necessary perform turbo iterative operation a plurality of times before performing final determination for the received signal. The nature of the iterative operations performed by the turbo receiver makes computation complicated, and increases the decoding time.
The receiver of this invention (Single Shot SS receiver) is based on a parallel maximum a posteriori probabilities estimation algorithm, and does not require iterative computation. In the SS receiver of this invention, in order to increase the judgment speed for a plurality of soft-judgment results derived from one data stream, all of the receivers execute computation in parallel.
FIG. 1 shows the configuration of a MIMO system, where TRX is a transmission station and REC is a receiver station.
Data streams D0 to DM−1 of the same number as the number of transmission antennas M pass through data modulation, D/A conversion, quadrature modulation, frequency up-conversion, and other processing by respective transmission apparatus TRX0 to TRXM−1, and are transmitted from the respective transmission antennas ATT0 to ATTM−1. Signals transmitted from the antennas ATT0 to ATTM−1 pass through independent fading channels hnm (m=0 to M−1, n=0 to N−1), and after space division multiplexing, are received by N receiving antennas ATR0 to ATRN−1. Signals received by the receiving antennas pass through frequency down-conversion, quadrature detection, A/D conversion and other processing by receiving apparatus REC0 to RECN−1, and received data streams y0 to yN−1 are generated. Each of these received data streams is in the form of M multiplexed transmitted data streams, so that by performing signal processing of all received data streams, the transmitted data streams are separated and reproduced.
Algorithms for signal processing to separate transmitted data streams D0 to DM−1 from received signals include such linear algorithms as ZF (Zero-Forcing) and MMSE which use the inverse matrix of a channel correlation matrix (see non-patent document 1), and non-linear algorithms of which BLAST (Bell Laboratories Layered Space-Time) is representative. In addition, there are also methods, such as MLD (Maximum Likelihood Decoding), which do not use operations on the inverse matrix of a correlation matrix (see non-patent document 2).
ZF (Zero-Forcing) Algorithm
If a transmitted data stream is represented by an M-dimensional complex matrix, and a received data stream is represented by an N-dimensional complex matrix, then the relation of the following equation occurs.
                                          Y            =                          H              ·              D                                ⁢                                          ⁢                      H            =                          [                                                                                                                                            h                          00                                                ·                                                  h                                                      01                            ⁢                                                                                                                                                                                    ⁢                      …                      ⁢                                                                                          ⁢                                              h                                                                              0                            ⁢                            M                                                    -                          1                                                                                                                                                                                                        h                                                  10                          ⁢                                                                                                                                                    ⁢                      …                      ⁢                                                                                          ⁢                                              h                                                                              1                            ⁢                            M                                                    -                          1                                                                                                                                                          …                                                                                                                                      h                                                                              N                            -                            10                                                    ⁢                                                                                                                                                    ⁢                      …                      ⁢                                                                                          ⁢                                              h                                                  N                          -                                                      1                            ⁢                            M                                                    -                          1                                                                                                                                ]                                ⁢                                          ⁢          D          =                                    [                                                                    D                    0                                    ·                                      D                    1                                                  ⁢                                                                  ⁢                …                ⁢                                                                  ⁢                                  D                                      M                    -                    1                                                              ]                                      -              1                                      ⁢                                  ⁢                  Y          =                                    [                                                                    y                    0                                    ·                                      y                    1                                                  ⁢                                                                  ⁢                …                ⁢                                                                  ⁢                                  y                                      N                    -                    1                                                              ]                                      -              1                                                          (        1        )            
The ZF (Zero-Forcing) algorithm uses the following equation to estimate the transmitted data stream.{circumflex over (D)}=(H*·H)−1H*D=H+·Y  (2)
Here, H*H is called the channel correlation matrix. H+ denotes the pseudo-inverse matrix; and in order for this pseudo-inverse matrix to exist, it is necessary that N≧M.
MMSE Algorithm
The MMSE (Minimum Mean Square Error) method is another linear estimation approach in which the transmitted data stream (received data vector) D is estimated based on the received data stream Y. In this MMSE algorithm, the following equation is used to determine the matrix G:ε2=E[(D−{circumflex over (D)})*(D−{circumflex over (D)})]=[(D−G·Y)*(D−G·Y)]  (3)
Then, the following equation is used to estimate the data stream D.{circumflex over (D)}=(α·I+H*·H)−1H*·Y  (4)
Here, α is the noise dispersion, and I is a matrix which depends on G. The ZF algorithm corresponds to the MMSE algorithm when α=0.
Decision Feedback Decoding
It is expected that if the most reliable element of the transmitted vector data D is decoded and used to improve decoding of the other elements, performance will be improved. This method is called symbol cancellation, and when combined with the ZF method and MMSE method, is known as ZF-VBL and MSSE-VBL.
MLD Algorithm
The MLD algorithm is a method that does not use operations in the inverse matrix of a correlation matrix, but uses the following equation to estimate the transmitted data stream (transmission vector) D.{circumflex over (D)}=arg min∥Y−H·D∥2  (5)
Here, if the number of signal constellations of modulated data input to M antennas is Q, then there exists QM combinations of transmission vectors D. In QPSK, Q=4, in 16 QAM, Q=16, and in 64 QAM, Q=64. In the MLD algorithm, candidates (replicas) of the QM transmission vectors are generated, and the operation of equation (5) is performed, and the replica for which the result is the smallest is estimated to be the input data.
Above, is the normal case in which the number of transmission antennas is M, and the number of receiver antennas is N, so when M=2 and N=2, Equation (1) becomes as shown below.
                              Y          =                      H            ·            D                          ,                                  ⁢                  H          =                      [                                                                                h                    00                                                                                        h                    01                                                                                                                    h                    10                                                                                        h                    00                                                                        ]                          ,                                  ⁢                  D          =                      [                                                                                D                    0                                                                                                                    D                    1                                                                        ]                          ,                                  ⁢                  Y          =                      [                                                                                y                    0                                                                                                                    y                    1                                                                        ]                                              (        6        )            
The inventors have proposed a turbo receiver for a MIMO communication system that comprises: a transmission station that sends transmission using separate transmission antennas for two different data streams, and a receiving station that divides and outputs the data streams that have been multiplexed in space by signals that are received from the two antennas (see patent document 3).
FIG. 2 is a block diagram showing a MIMO communication system that comprises the turbo receiver proposed above, and as shown in (A) of FIG. 2, the transmission station TRX comprises two transmitters TRX0, TRX1 and two transmission antennas AT0, AT1, and the receiving station REC comprises two receiving antennas AR0, AR1 and two receivers (turbo receivers) REC0, REC1. As shown in (B) of FIG. 2, each of the receivers REC0, REC1 comprises a receiving unit RV and signal-processing unit PR, and the receiving unit RV performs processing such as data modulation, D/A conversion, quadrature conversion frequency up-conversion, and it inputs signals y0, y1 to the signal-processing unit PR, and the signal-processing unit PR determines the bit of the data stream.
Each transmitter TRX0, TRX1 performs QPSK or BPSK modulation and transmission of the information symbol Di (i=0, 1). The first transmitter TRX0 transmits a first data stream, and the second transmitter TRX1 transmits a second data stream.
(1) The first receiver REC0 calculates an estimated bit value for the first data stream D0 according to a signal that is received by the antenna AR0, and the second receiver REC1 calculates an estimated bit value for the first data stream D0 according to a signal that is received by the antenna AR1, then the first receiver REC0 combines these as the estimated bit value ΔlnP0 of the first data stream. Similarly, the second receiver REC1 obtains the estimated bit value ΔlnP1 of the second data stream D1.
(2) The first receiver REC0 refines the estimated bit value ΔlnP0 of the first data stream that was obtained by the aforementioned computation with the estimated bit value ΔlnP1 of the second data stream, and similarly the second receiver REC1 refines the estimated bit value ΔlnP1 of the second data stream with the estimated bit value ΔlnP0 of the first data stream.
(3) The first receiver REC0 and second receiver REC1 repeat the process of steps (1) to (2) a specified number of times.
(4) After a specified number of repetitions, the first receiver REC0 determines the bit D0 of the first data stream based on the aforementioned estimated bit value ΔlnP0 of the first data stream, and similarly, the second receiver REC1 determines the bit D1 of the second data stream based on the estimated bit value ΔlnP1 of the second data stream.
FIG. 3 and FIG. 4 show the simulation results for each of the aforementioned receiving methods (ZF-VBL method, MSSE-VBL method, QR-MLD method, MLD method and turbo method), and show the BER (Bit Error Rate) for 2Eb/No. In the simulation, there were two transmission antennas and two receiving antennas, and transmission was performed using QPSK modulation or 16 QAM modulation without encoding. FIG. 3 shows the case in which QPSK modulation was performed, and FIG. 4 shows the case in which 16 QAM modulation was performed, and both show the case in which there was no interference between channels (ICI-Free). The ICI-Free points correspond with AWGN obtained using simulation software.
The simulation results show that the MLD method gave the best BER characteristic. However, there is a very large amount of computations performed in the MLD method, and there is a problem in that the amount of computations due to the increased number of antennas increases exponentially. The proposed turbo receiver shows a BER characteristic that is very close to that of a receiver using the MDL method. However, in 16 QAM modulation, in order to obtain the same BER characteristic as in the MLD method, it is necessary to increase the number of iterations from two times to four times more than in the case of QPSK modulation; therefore computation becomes more complex and increases, and the time necessary for decoding increases. The complexity of the turbo receiver is less than that of a receiver using the MLD method, however, there is a problem in that the complexity increases proportionately with the number of iterations.
[Non-patent Document 1]
A. van Zelst, “Space Division Multiplexing Algorithms”, 10th Mediterranean Electrotechnical Conference 2000, MELECON 2000, Cyprus, May 2000, Vol. 3, pp. 1218-1221.
[Non-patent Document 2]
Richard van Nee et al. “Maximum Likelihood Decoding in a Space Division Multiplexing System”; Proc. of IEEE Vehicular Technology Conference (VTC) 2000, Tokyo 2000.
[Patent Document 3]
Japanese patent application no. 2004-378888 (Dec. 28, 2004)